#!/bin/bash

# rStar-1 多模态推理生成器脚本
# 
# 该脚本用于运行多模态MCTS推理，支持图像和文本的联合推理。
# 与原始GSM8K生成器保持完全一致的参数传递和输出目录结构。
#
# 使用方法:
#   bash scripts/run_multimodal_generator.sh --config configs/openai_multimodal_config.yaml
#   bash scripts/run_multimodal_generator.sh --config configs/openai_multimodal_config.yaml --verbose

# 设置错误处理
set -e

# 默认参数
DEFAULT_CONFIG="configs/qwen25vl-7b-mathvison_config.yaml"
VERBOSE=""

# 解析命令行参数
while [[ $# -gt 0 ]]; do
    case $1 in
        --config)
            CONFIG="$2"
            shift 2
            ;;
        --verbose)
            VERBOSE="--verbose"
            shift
            ;;
        -h|--help)
            echo "用法: $0 [选项]"
            echo "选项:"
            echo "  --config <path>    配置文件路径 (默认: $DEFAULT_CONFIG)"
            echo "  --verbose          启用详细输出"
            echo "  -h, --help         显示帮助信息"
            exit 0
            ;;
        *)
            echo "未知参数: $1"
            echo "使用 $0 --help 查看帮助"
            exit 1
            ;;
    esac
done

# 使用默认配置文件（如果未指定）
CONFIG=${CONFIG:-$DEFAULT_CONFIG}

# 检查配置文件是否存在
if [[ ! -f "$CONFIG" ]]; then
    echo "错误: 配置文件不存在: $CONFIG"
    exit 1
fi

# 显示运行信息
echo "=== rStar-1 多模态推理生成器 ==="
echo "配置文件: $CONFIG"
echo "详细输出: ${VERBOSE:-"关闭"}"
echo "开始时间: $(date)"
echo "=================================="

# 运行多模态推理生成器
python run_src/do_multimodal_generate.py \
    --config "$CONFIG" \
    $VERBOSE

echo "=================================="
echo "完成时间: $(date)"
echo "多模态推理生成完成" 